[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
unpack(TEMPLATE,EXPR)
Unpack does the reverse of pack: it takes a string
representing a structure and expands it out into an
array value, returning the array value. (In a
scalar context, it merely returns the first value
produced.) The TEMPLATE has the same format as in
the pack function. Here's a subroutine that does
substring:
sub substr {
local($what,$where,$howmuch) = @_;
unpack("x$where a$howmuch", $what);
}
and then there's
sub ord { unpack("c",$_[0]); }
In addition, you may prefix a field with a %<number>
to indicate that you want a <number>-bit checksum of
the items instead of the items themselves. Default
is a 16-bit checksum. For example, the following
computes the same number as the System V sum pro-
gram:
while (<>) {
$checksum += unpack("%16C*", $_);
}
$checksum %= 65536;
See Also:
pack
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson